package com.dyna.digit.process.domain.entity;

import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import com.dyna.core.aop.annotation.EnumValid;
import com.dyna.enums.DigitProjectTypeEnum;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;

import javax.validation.constraints.NotBlank;
import javax.validation.constraints.NotNull;

/**
 * @author zhoucaiwang
 */
@Data
@TableName(value = "digit_declare")
public class DigitDeclare {

    @TableId(type = IdType.AUTO)
    private Integer id;

    @ApiModelProperty(value = "项目id")
    private Integer projectId;

    @NotBlank(message = "项目名称不能为空")
    @ApiModelProperty(value = "项目名称")
    private String projectName;

    @NotNull(message = "项目类型不能为空")
    @ApiModelProperty(value = "项目类型")
    @EnumValid(value = DigitProjectTypeEnum.class, message = "项目类型参数异常")
    private Integer projectType;

    @NotNull(message = "财政预算年份不能为空")
    @ApiModelProperty(value = "财政预算年份")
    private Integer year;

    @ApiModelProperty("上级主管部门")
    private Integer basePrevManDept;

    @ApiModelProperty("主管部门")
    private Integer baseManDept;

    @ApiModelProperty("建设单位")
    private Integer baseConstructUnit;

    @ApiModelProperty(value = "建设类别/运维类别")
    private Integer projBuildCategory;

    @ApiModelProperty(value = "关联项目id")
    private Integer relevanceProjId;

}